package com.library.main;

import java.io.IOException;
import java.sql.SQLException;
import java.util.*;

import com.library.bean.Book;
import com.library.bean.User;
import com.library.dao.BookDAO;
import com.library.dao.UserDAO;

public class UserManagerSystem {
	Scanner sc = new Scanner(System.in);
	// 控制是否显示主菜单
	private boolean loop = true;
	// 控制菜单选择
	private String key = "";
	// 用户验证登录，增删改查功能
	private UserDAO uDAO = new UserDAO();
	private BookDAO bDAO = new BookDAO();
	// 用户集合容器
	List<User> list = null;

	public static void main(String[] args) throws IOException, ClassNotFoundException, SQLException {
		new UserManagerSystem().run();
		System.out.println("使用结束,退出系统");
	}

	// 显示主菜单
	private void run() throws IOException, ClassNotFoundException, SQLException {
		while (loop) {
			System.out.println("欢迎使用图书管理系统");
			System.out.println("1 登录系统");
			System.out.println("9 退出系统");
			System.out.print("请输入你的选择：");
			key = sc.nextLine();
			// 根据用户的输入，来实现不同的功能
			switch (key) {
			case "1":
				System.out.print("请输入用户名：");
				String user_name = sc.nextLine();
				System.out.print("请输入密码：");
				String password = sc.nextLine();
				// 验证用户登录
				if (uDAO.login(user_name, password) != null) {
					// 显示用户信息
					uDAO.findUserAll();
					System.out.println("管理员"+user_name+"登录成功");
					System.out.println("欢迎来到管理中心：");
					// 进入到二级菜单
					while (loop) {
						System.out.println("请输入以下数字，执行相应功能：1.插入新的书籍 2.查阅书籍 3.退出系统");
						key = sc.nextLine();
						switch (key) {
						case "1":
							// 插入书籍
							Scanner sc1 = new Scanner(System.in);
							System.out.println("请输入ISBN号：");
							String addBook_code = sc1.nextLine();
							System.out.println("请输入书名：");
							String addBook_name = sc1.nextLine();
							System.out.println("请输入库存：");
							int addBook_total = sc1.nextInt();
							System.out.println("请输入借出数量：");
							int addLend_num = sc1.nextInt();
							Book b1 = new Book(1, addBook_code, addBook_name, addBook_total, addLend_num);
							int result = bDAO.insert(b1);
							if (result == 1) {
								System.out.println("用户添加成功");
							} else {
								System.out.println("当前用户已存在,添加失败");
							}
							break;
						case "2":
							// 查阅书籍
							bDAO.findBookAll();
							break;
						case "3":
							// 退出
							loop = false;
							break;						
						}
					}
				} else {
					// 登录失败
					System.out.println("用户名或密码不正确,登录失败");
				}
				break;
			case "9":
				loop = false;
				break;
			}
		}
	}

}
